


Heart in a Box

by end_alls



Category: Kingdom Hearts (Video Games)
Genre: M/M, i want virtual twilight town to run like a ps2 game, post kh3, roxas/data hayner
Language: English
Status: In-Progress
Published: 2020-05-17
Updated: 2020-05-17
Packaged: 2021-03-03 00:20:19
Rating: Teen And Up Audiences
Warnings: No Archive Warnings Apply
Chapters: 1
Words: 2,753
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/24235678
Author URL: https://archiveofourown.org/users/end_alls/pseuds/end_alls
Summary: AU where they aren't able to get a vessel for Roxas so they put him back in the virtual Twilight Town and Data Hayner catches feelings because Sora isn't the only one with a contagious heart.
Relationships: Hayner/Roxas (Kingdom Hearts)
Comments: 17
Kudos: 62





	Heart in a Box

**Author's Note:**

> I thought of this when I was replaying KH3 and Sora suggests that they can put Roxas in the virtual twilight town if he doesn't have a vessel, and how much that would suck

Roxas moves to open his dresser, but his drowsy thoughts aren’t running fast enough to stop his fingers from jamming into the flat face of the object. He curses. The sting is enough to get his thoughts back in lucid order, and they’re quick to inform him, once again, that the dresser doesn’t _work._ Unlike the _closet,_ the _dresser_ is just a rectangular prism with the drawers painted on.

It was never meant to be used. Another prop DiZ had added to make the data world just real enough to keep him fooled, content.

Ever since he’d been put back here, Roxas had been piecing together a list of things that work, and things that don’t.

The fridge works.

The oven doesn’t.

The front door opens.

The hall closet is an image printed on the wall.

_Got it memorized?_

Lea and Xion visit often, but not often enough. No one visits often enough.

He doesn’t blame them, or anyone. They have vessels, after all. They aren’t killing time inside a dilapidated datascape, waiting for scientists to cobble together something for a heart to puppet.

At this point, he’d take anything. He’d possess a _broom._ Whatever it took to get him out there with the others. Looking for Sora.

But for now, he has to swallow those thoughts back down his throat, open the closet, and pull out the only clothes that don’t feel like jagged polygons against his skin.

He doesn’t have to get dressed, or eat, or anything really, but even in this fake facade of a world his all-too-real heart still craves motion, so he goes about each piece of the routine to keep a layer of dust from settling over his heart.

Roxas’ eyes glance over his sloppy reflection in a hallway mirror, but he doesn’t feel like fixing his hair today. He’s late enough as it is.

Roxas sets off towards the Usual Spot where Hayner, Pence, and Olette are waiting—where they’re always waiting, set on a cycle of an endless summer vacation with the rest of the town. The days roll by in a cyclic arc as the three of them waste their summer on pointless games and projects, then scramble to finish the same homework assignment just before vacation ends.

What they never come to realize is that the simulation wasn’t meant to last beyond that—nothing before, or after—and so there is no school, no teachers, no classrooms. Just one fool’s errand after another.

On the third loop, just to get it out of the way, Roxas had tried recreating the assignment they’d just finished and handed it over for the others to copy, but all they did was insist that they didn’t want to work on it yet. They wouldn’t even read what he’d written. But he kept it up, telling them to copy his work, that they didn’t even have to _do it,_ but it still took them until that last week to even acknowledge the assignment.

The flaws in the program were all so easy to see, even in the beginning, and there was something insulting about it. This place had fooled him for a week?

Roxas trudges his way to their hangout, trying not to dread another day of tired conversation trees with the others. The data versions of Hayner, Pence, and Olette were friendly, sure, but they weren’t his friends. They were just all he had.

“Roxas! Over here!” Hayner’s voice startles him. Instead of waiting inside the back alley, the three of them are standing just outside the fence. If Hayner hadn’t said anything, Roxas might have plowed right into them. He hasn’t tried that yet. Would he just clip through them…?

“I was starting to think you weren’t coming!” Hayner interrupts.

“Sorry, just… running a little late, I guess.”

“Hey, it’s all right. We all have our off days!” Pence says.

“Yeah, no worries!” Olette adds.

Hayner grins. “You’re working with some cute bedhead, at least.”

Roxas freezes, muscles locking as Hayner’s hand swerves closer, and ruffles his hair.

Last month, Roxas had shown up in pajamas, just to see if he could, and none of them had even noticed. So why…

“…Roxas?” Hayner’s touch draws away from his hair. “You okay?”

“Fine—I’m fine.”

“You sure?” Hayner’s eyes look him up and down in an animation loop Roxas hasn’t seen before. And he thought he’d exhausted the AI’s behaviors by now.

“So… we were gonna do some odd jobs today, right?” Roxas deflects, because he knows that at this point in the vacation, the data kids’ funds are getting low. Even if they haven’t bought anything.

“Actually,” Hayner says, pumping his arms. “I was thinking we could go to the beach!”

“With what munny?” Roxas counters, because if he doesn’t say it, Pence or Olette will soon enough. If he could shoot the idea down now, it’d be one less disappointment when the plans inevitably fall through.

“C’mon, Roxas! Have a little faith!” Hayner plants his feet firmly and jabs a thumb towards his chest. “Hayner’s got this one!”

Roxas can’t help but laugh. “Oh yeah?”

“I picked up some extra odd jobs yesterday!” he goes on excitedly. “If we all chip in what we’ve got, we should have more than enough for train tickets!”

“Hayner, you know we don’t have any munny right now…” Olette says, right on time.

“Yeah,” Pence adds matter-of-factly before taking a beat to count on his fingers.”We’d need to work at least a few hours to get enough for train tickets, and at that point, it’d be too late for a whole day at the beach anyway.”

Hayner’s smile falters. “Are you serious?” He looks to Roxas, as if expecting something. “You really don’t have anything?”

“There’s always tomorrow,” Roxas says without meaning it.

Hayner groans. “It’s always tomorrow! At this rate we’ll never make it to the beach before summer is over!” He clenches his fists, the way he always does when he’s about to storm off. “I thought I could count on you guys.”

And, like clockwork, he storms off, and Roxas lets him go.

Roxas does a few jobs with Pence and Olette, but his heart isn’t in it—surprise, surprise—and he bows out early. It doesn’t matter what he pitches in anyway—they always end up with the same amount when they pool everything together.

As he steps on to the train station platform, planning to stare out at the sunset from the top of the clocktower until it’s time to go home, he spots two hooded figures making their way down the steps of the station. One of them raises a hand in greeting, while the other hangs back.

“Sora, Riku,” Roxas calls, trotting over to them. “Is something up?” He knows he can’t get his hopes up, but the question still doesn’t come out as passively as it should.

Data Riku pulls off his hood. “Not really. Just wanted to visit.” Roxas isn’t sure if all of his smiles look sad, or if Riku’s face is just like that.

Data Sora, his hood still masking his face, nods. Data Sora is young, like the Sora in Roxas’ memories, but this Sora never smiles big enough to show his dimples. Roxas hardly sees his face at all these days. “Hi, Roxas.”

“Hey Sora,” Roxas says, pressing a smile into his face. “Good to see you.” He realizes it’s a stupid sort of thing to say, but the hood stays up for a reason. It’s hard for everyone to see that face.

“It’s good to see you too, Roxas,” he says, and Roxas can hear the smile growing in his voice. “Do anything fun today?”

It would sound like a joke coming from anyone but Sora. “Hah, just some errands and stuff.” He gestures back towards the hill into town. “I’ve gotten so good at all the minigames it’s not really challenging anymore.”

“Maybe we could make them more difficult,” Riku suggests. “It’d probably just involve changing a few variables.” He and Sora had done what they could to fix bugs and make little improvements like this, but the simulation had been cobbled together with such limited processing power that there wasn’t much they could do without creating a lag that made the whole town’s frame rate drop, and any minor bug or annoyance was preferable to _that._

“Yeah, I don’t think the minigame AI is too complicated,” Sora chimes in, eager at the opportunity to help with something. “It’d just be a little balancing. How ‘bout it, Roxas?”

It’s impossible to say no to that face, even when it’s cloaked in a hood. Roxas smiles. “Sure, you can give it a try.”

“Great!” Sora pumps his fists. “We’ll get on it. Right Riku?”

Riku nods. “Like usual, we’ll revert the changes if it messes something up.”

Roxas prays it doesn’t. “Okay.”

“Sit tight for now!” Sora adds. “We’ll dig into the code and let you know what we find!”

“Sure,” Roxas says, looking up towards the tower. To his surprise, someone’s already up there. The shoes look like Hayner’s. He turns back to the cloaked pair. “So I’ll see you guys in a little while. Maybe after we can get some ice cream.”

“You mean it?” Sora claps his hands, and Riku smiles beside him.

Roxas chuckles. “Of course.”

Roxas climbs to the top of the tower, and rounds the corner of the upper platform to see Hayner sitting there, hunched over and pouting.

“Hayner.”

He doesn’t look up. “Who were those people down there? New friends of yours?”

“Yeah,” Roxas says, not having the energy to come up with some other excuse. “Wait… you saw them?” The data residents of Twilight Town had a difficulty acknowledging things they didn’t already expect to see, so Data Sora and Riku and whoever else could usually come and go as they pleased without anyone even commenting on it.

“‘Course I saw them,” Hayner scoffs, keeping his glare trained on the sky. “Looked pretty shady to me, Roxas. Who goes around dressed like that if they aren’t up to something?”

Roxas takes a seat next to him. “Will you relax? They came to help me with something.”

“Like what? Bailing on your friends?”

“You bailed first,” Roxas reminds him. Hayner could be such a pain sometimes, and Roxas often took to wondering if the real Hayner got like this too, or if DiZ had just programmed the data version to be extra suspicious and paranoid so he’d be better at snitching to him if anything went wrong. “What’s this really about? The beach?”

“We never get to go. Something always happens.”

“That’s not _our_ fault.” Roxas knew that better than any of them.

Hayner brings his knees up to his chest, and folds his arms on top of them. “I just… I really want to go there with you.” Then he amends, “With all of you guys.”

Roxas lets out a breath, and follows Hayner’s gaze out to the sunset sky. “Me too,” he says quietly.

When Hayner finally turns to look at him, his eyes actually look wet instead of just glazed-over. “So why don’t we? Why can’t we?”

“It’s more complicated than that.” Roxas swallows the tears suddenly threatening to rise up his throat.

“Whate—ver…” The audio of Hayner’s voice stutters, and sure enough, the ambient noise of the town drops in and out on the same beat. Sora and Riku have broken something.

Roxas takes a breath in, then out. It’s fine. They’ll fix it soon.

Hayner clears his throat next to him, but Roxas has closed his eyes. Watching the town shudder through a drop in frame rate turns the world claustrophobic, trapping him someplace where everything is static and wrong and the edges of the box he’s in become real enough to crush him. Suffice to say, Roxas has stopped watching.

“Rox—as? R—oxas?” Hayner’s hand grabs his arm. It’s overheating like a computer, and the touch shocks Roxas with a bout of vertigo as he remembers where they’re sitting beyond his closed eyelids. “What’s g—oing on?”

Roxas’ anxiety gives Hayner’s voice a twinge of fear when it reaches his ears, but he keeps his eyes shut. He breathes in and out again. He just has to hold out until it’s over. “They’ll fix it soon,” he tells himself.

Hayner’s hand locks up against his skin on each frame skip, and Roxas wants to shake him off, but he keeps still. “Rox—as, I ca—n’t move—it’s—”

Finally, the reversion pulse goes out, crackling through the air like electricity, and Roxas breathes as it passes them. Hayner’s touch lifts from his skin, and he makes the mistake of opening his eyes.

Hayner’s face is scared and frozen beside him, mouth still open to say something, just before he flickers out with the rest of the world.

Roxas resets in his bedroom, still dressed. Data Sora and Riku are already waiting in his apartment when he finally recovers the nerve to open the door.

“Roxas, I’m so sorry!” Sora starts. “I wanted to see if we could add some additional marker locations for the poster game, but…”

“Well, it almost worked,” Riku adds, putting a hand on Sora’s shoulder.

Roxas gives them a smile, but his lips feel tight. “It’s okay, guys. Thanks for trying.”

“We were able to shorten the timer on the other games, though!” Sora says, recovering. “Now you’ll have to be faster to finish them.”

“Cool.”

“Did you still want to get ice cream?”

Roxas runs a hand through the bedhead he still hasn’t fixed. “It’s a bit early now, after the reset… The shop won’t be open for another hour or two.”

Sora’s shoulders fall. “Darn…”

“Do you want to wait?” Riku asks.

Roxas waves his hand. “No… No, that’s okay. You guys don’t need to hang around.”

“We will, though,” Sora presses. “If you want.”

“I don’t think I’m in the mood for ice cream anymore.”

Sora waits a moment more, face unreadable under the hood, then says, “Okay.” He raises his arms hesitantly, then lowers them again, as thinking better of it, but Roxas can’t deny him this.

He raises his own arms, and Sora lets out a little laugh as he closes the distance between them and gives Roxas a tight hug.

“Take care, Roxas.”

“I will.”

“Let us know if you need anything,” Riku says once Sora finally releases him. “We’ll be back if there’s any…” A pause that’s weighted, like always. “…update. From the outside.”

“Thanks.”

“Bye, Roxas!” Sora gives a little wave, and Roxas returns it.

Data Riku opens a rosy portal to another datascape, and they leave him, alone again.

Roxas doesn’t feel like going back to sleep, but it still takes him almost as long to leave the house as it did before the day reset. Eventually, he decides he’s ready to face the others again. To see Hayner acting like nothing happened.

“Roxas!" Hayner waves from a curb he’s sitting on outside.

Roxas nearly turns back around and asks them to reset the day again.

Instead, he says, “What’s going on?” as nonchalantly as he can manage, trying to tamp down on the feeling rising in his chest. A feeling he realizes is guilt.

“You not sleep well again?”

“Huh?”

Hayner points up at his hair. “Your hair’s a mess, man.”

Damn. Roxas still hadn’t done anything about it. He should’ve known Hayner would notice again. But _why. Why?_

When he doesn’t say anything, Hayner goes on. “I had this freaky dream.”

Roxas’ blood runs cold as the guilt makes a sudden shift into fear.

“It was… I dunno, I just…” Hayner’s eyes fall to the ground near his feet. “I wanted to make sure you were here.”

“…Why wouldn’t I be here?” Roxas says, each word making the knot in his chest grow heavier.

“Lately I get this feeling, like… like you could leave and not come back.”

“…Because of a dream?” Roxas asks, even though he knows it’s better—safer—if he doesn’t.

Hayner nods slightly. “We were sitting on the tower, but my hands started… not working or something, and you wouldn’t look at me.” Hayner sniffs and wipes his nose gruffly, as if he can play off the fact that he’s started to cry.

Roxas thought he knew the rules of this world.

“I grabbed your arm and you wouldn’t look at me.”

But he didn’t know anything at all.

**Author's Note:**

> If you've ever made a game you'll know that a frame rate drop is a pretty vanilla sort of glitch to routinely have but the data boys are REALLY good programmers ok
> 
> Thanks for reading, I'm on twitter at [toppiegames](https://twitter.com/toppiegames)!


End file.
